RocketMQ4.3.x 史上配置最全详解,没有之一

您所在的位置:网站首页 rocketmq 配置参数 RocketMQ4.3.x 史上配置最全详解,没有之一

RocketMQ4.3.x 史上配置最全详解,没有之一

2022-09-02 20:27| 来源: 网络整理| 查看: 265

   最近整理了RocketMQ的配置参数一部分参考rocketmq技术内幕,一部分自己看源码猜测,有表述不清楚或不正确请广大网友指正

   这里应该是最全的配置解析了,搞了2天。以后查询就好办了,仅此贡献给广大网友方便查询。

    其中有很多我也没有搞明白,Rocket源码太多,读起来比较吃力,有很多都是见名知意。

  

   

NameServer配置属性 参数名 参数类型 描述 默认参数(时间为单位ms,数据单位为byte) rocketmqHome String RockerMQ主目录,默认用户主目录   namesrvAddr String NameServer地址   kvConfigPath String kv配置文件路径,包含顺序消息主题的配置信息   configStorePath String NameServer配置文件路径,建议使用-c指定NameServer配置文件路径   clusterTest boolean 是否开启集群测试,默认为false   orderMessageEnable boolean 是否支持顺序消息,默认为false   NameServer、Broker、filter网络配置属性 accessMessageInMemoryMaxRatio int 访问消息在内存中比率,默认为40 40 adminBrokerThreadPoolNums int 服务端处理控制台管理命令线程池线程数量 16 autoCreateSubscriptionGroup boolean 是否自动创建消费组 true autoCreateTopicEnable boolean 是否自动创建主题 true bitMapLengthConsumeQueueExt int ConsumeQueue扩展过滤bitmap大小 112 brokerClusterName String Broker集群名称 TestCluster brokerFastFailureEnable boolean 是否支持broker快速失败 如果为true表示会立即清除发送消息线程池,消息拉取线程池中排队任务 ,直接返回系统错误 true brokerId int brokerID 0表示主节点 大于0表示从节点 0 brokerIP1 String Broker服务地址   brokerIP2 String BrokerHAIP地址,供slave同步消息的地址   brokerName String Broker服务器名称morning服务器hostname broker-a brokerPermission int Broker权限 默认为6表示可读可写 6 brokerRole enum broker角色,分为 ASYNC_MASTER SYNC_MASTER, SLAVE ASYNC_MASTER brokerTopicEnable boolean broker名称是否可以用做主体使用 true channelNotActiveInterval long   60000 checkCRCOnRecover boolean 文件恢复时是否校验CRC true cleanFileForciblyEnable boolean 是否支持强行删除过期文件 true cleanResourceInterval int 清除过期文件线程调度频率 10000 clientAsyncSemaphoreValue int   65535 clientCallbackExecutorThreads int   8 clientChannelMaxIdleTimeSeconds int   120 clientCloseSocketIfTimeout boolean   false clientManagerThreadPoolQueueCapacity int 客户端管理线程池任务队列初始大小 1000000 clientManageThreadPoolNums int 服务端处理客户端管理(心跳 注册 取消注册线程数量) 32 clientOnewaySemaphoreValue int   65535 clientPooledByteBufAllocatorEnable boolean   false clientSocketRcvBufSize long 客户端socket接收缓冲区大小 131072 clientSocketSndBufSize long 客户端socket发送缓冲区大小 131072 clientWorkerThreads int   4 clusterTopicEnable boolean 集群名称是否可用在主题使用 true commercialBaseCount int   1 commercialBigCount int   1 commercialEnable boolean   true commercialTimerCount int   1 commercialTransCount int   1 commitCommitLogLeastPages int 一次提交至少需要脏页的数量,默认4页,针对 commitlog文件 4 commitCommitLogThoroughInterval int Commitlog两次提交的最大间隔,如果超过该间隔,将忽略commitCommitLogLeastPages直接提交 200 commitIntervalCommitLog int commitlog提交频率 200 compressedRegister boolean   false connectTimeoutMillis long 链接超时时间 3000 consumerFallbehindThreshold long 消息消费堆积阈值默认16GB在disableConsumeifConsumeIfConsumerReadSlowly为true时生效 17179869184 consumerManagerThreadPoolQueueCapacity int 消费管理线程池任务队列大小 1000000 consumerManageThreadPoolNums int 服务端处理消费管理 获取消费者列表 更新消费者进度查询消费进度等  32 debugLockEnable boolean 是否支持 PutMessage Lock锁打印信息 false defaultQueryMaxNum int 查询消息默认返回条数,默认为32 32 defaultTopicQueueNums int 主体在一个broker上创建队列数量 8 deleteCommitLogFilesInterval int 删除commitlog文件的时间间隔,删除一个文件后等一下再删除一个文件 100 deleteConsumeQueueFilesInterval int 删除consumequeue文件时间间隔 100 deleteWhen String 磁盘文件空间充足情况下,默认每天什么时候执行删除过期文件,默认04表示凌晨4点 04 destroyMapedFileIntervalForcibly int 销毁MappedFile被拒绝的最大存活时间,默认120s。清除过期文件线程在初次销毁mappedfile时,如果该文件被其他线程引用,引用次数大于0.则设置MappedFile的可用状态为false,并设置第一次删除时间,下一次清理任务到达时,如果系统时间大于初次删除时间加上本参数,则将ref次数一次减1000,知道引用次数小于0,则释放物理资源 120000 disableConsumeIfConsumerReadSlowly boolean 如果消费组消息消费堆积是否禁用该消费组继续消费消息 false diskFallRecorded boolean 是否统计磁盘的使用情况,默认为true true diskMaxUsedSpaceRatio int commitlog目录所在分区的最大使用比例,如果commitlog目录所在的分区使用比例大于该值,则触发过期文件删除 75 duplicationEnable boolean 是否允许重复复制,默认为 false false enableCalcFilterBitMap boolean 是否开启比特位映射,这个属性不太明白 false enableConsumeQueueExt boolean 是否启用ConsumeQueue扩展属性 false enablePropertyFilter boolean 是否支持根据属性过滤 如果使用基于标准的sql92模式过滤消息则改参数必须设置为true false endTransactionPoolQueueCapacity int 处理提交和回滚消息线程池线程队列大小 100000 endTransactionThreadPoolNums int 处理提交和回滚消息线程池 24 expectConsumerNumUseFilter boolean 布隆过滤器参数 32 fastFailIfNoBufferInStorePool boolean 从 transientStorepool中获取 ByteBuffer是否支持快速失败 false fetchNamesrvAddrByAddressServer boolean 是否支持从服务器获取nameServer false fileReservedTime String 文件保留时间,默认72小时,表示非当前写文件最后一次更新时间加上filereservedtime小与当前时间,该文件将被清理 120 filterDataCleanTimeSpan long 清除过滤数据的时间间隔 86400000 filterServerNums int broker服务器过滤服务器数量 0 filterSupportRetry boolean 消息过滤是否支持重试 false flushCommitLogLeastPages int 一次刷盘至少需要脏页的数量,针对commitlog文件 4 flushCommitLogThoroughInterval int commitlog两次刷盘的最大间隔,如果超过该间隔,将fushCommitLogLeastPages要求直接执行刷盘操作 10000 flushCommitLogTimed boolean 表示await方法等待FlushIntervalCommitlog,如果为true表示使用Thread.sleep方法等待 false flushConsumeQueueLeastPages int 一次刷盘至少需要脏页的数量,默认2页,针对 Consume文件 2 flushConsumeQueueThoroughInterval int Consume两次刷盘的最大间隔,如果超过该间隔,将忽略 60000 flushConsumerOffsetHistoryInterval int fushConsumeQueueLeastPages直接刷盘 60000 flushConsumerOffsetInterval int 持久化消息消费进度 consumerOffse.json文件的频率ms 5000 flushDelayOffsetInterval long 延迟队列拉取进度刷盘间隔。默认10s 10000 flushDiskType enum 刷盘方式,默认为 ASYNC_FLUSH(异步刷盘),可选值SYNC_FLUSH(同步刷盘) ASYNC_FLUSH flushIntervalCommitLog int commitlog刷盘频率 500 flushIntervalConsumeQueue int consumuQueue文件刷盘频率 1000 flushLeastPagesWhenWarmMapedFile int 用字节0填充整个文件的,每多少页刷盘一次。默认4096页,异步刷盘模式生效 4096 forceRegister boolean 是否强制注册 true haHousekeepingInterval int Master与save长连接空闲时间,超过该时间将关闭连接 20000 haListenPort int Master监听端口,从服务器连接该端口,默认为10912 10912 haMasterAddress String Master服务器IP地址与端口号   haSendHeartbeatInterval int Master与Slave心跳包发送间隔 5000 haSlaveFallbehindMax int 允许从服务器落户的最大偏移字节数,默认为256M。超过该值则表示该Slave不可用 268435456 haTransferBatchSize int 一次HA主从同步传输的最大字节长度,默认为32K 32768 heartbeatThreadPoolNums int 心跳线程池线程数 8 heartbeatThreadPoolQueueCapacity int 心跳线程队列数量 50000 highSpeedMode boolean 当前版本未使用 false listenPort int 服务端监听端口 10911 longPollingEnable boolean 是否开启长轮训 true mapedFileSizeCommitLog int 单个conmmitlog文件大小默认1GB 1073741824 mapedFileSizeConsumeQueue int 单个consumequeue文件大小默认30W*20表示单个Consumequeue文件中存储30W个ConsumeQueue条目 6000000 mappedFileSizeConsumeQueueExt int ConsumeQueue扩展文件大小默认48MB 50331648 maxDelayTime int 当前版本未使用 40 maxErrorRateOfBloomFilter int 布隆过滤器参数 20 maxHashSlotNum int 单个索引文件hash槽的个数,默认为五百万 5000000 maxIndexNum int 单个索引文件索引条目的个数,默认为两千万 20000000 maxMessageSize int 默认允许的最大消息体默认4M 4194304 maxMsgsNumBatch int 一次查询消息最大返回消息条数,默认64条 64 maxTransferBytesOnMessageInDisk   一次服务消息端消息拉取,消息在磁盘中传输允许的最大字节 65536 maxTransferBytesOnMessageInMemory int 一次服务端消息拉取,消息在内存中传输允许的最大传输字节数默认256kb 262144 maxTransferCountOnMessageInDisk int 一次消息服务端消息拉取,消息在磁盘中传输允许的最大条数,默认为8条 8 maxTransferCountOnMessageInMemory int 一次服务消息拉取,消息在内存中传输运行的最大消息条数,默认为32条 32 messageDelayLevel String 延迟队列等级(s=秒,m=分,h=小时) 1s 5s 10s 30s 1m 2m 3m 4m 5m 6m 7m 8m 9m 10m 20m 30m 1h 2h messageIndexEnable boolean 是否支持消息索引文件 true messageIndexSafe boolean 消息索引是否安全,默认为 false,文件恢复时选择文件检测点(commitlog.consumeque)的最小的与文件最后更新对比,如果为true,文件恢复时选择文件检测点保存的索引更新时间作为对比 false messageStorePlugIn String 消息存储插件地址默认为空字符串   namesrvAddr String nameServer地址   notifyConsumerIdsChangedEnable   消费者数量变化后是否立即通知RebalenceService线程,以便马上进行重新负载 true offsetCheckInSlave boolean 从服务器是否坚持 offset检测 false osPageCacheBusyTimeOutMills long putMessage锁占用超过该时间,表示 PageCache忙 1000 pullMessageThreadPoolNums int 服务端处理消息拉取线程池线程数量 默认为16加上当前操作系统CPU核数的两倍 32 pullThreadPoolQueueCapacity int 消息拉去线程池任务队列初始大小 100000 putMsgIndexHightWater int 当前版本未使用 600000 queryMessageThreadPoolNums int 服务端处理查询消息线程池数量默认为8加上当前操作系统CPU核数的两倍 16 queryThreadPoolQueueCapacity int 查询消息线程池任务队列初始大小 20000 redeleteHangedFileInterval int 重试删除文件间隔,配合destorymapedfileintervalforcibly 120000 regionId String 消息区域 DefaultRegion registerBrokerTimeoutMills int 注册broker超时时间 6000 registerNameServerPeriod int broker注册频率 大于1分钟为1分钟小于10秒为10秒 30000 rejectTransactionMessage boolean 是否拒绝事物消息 false rocketmqHome String RocketMQ主目录 /home/rocketmq/rocketmq-all-4.3.2-bin-release sendMessageThreadPoolNums int 服务端处理消息发送线程池数量 1 sendThreadPoolQueueCapacity int 消息发送线程池任务队列初始大小 10000 serverAsyncSemaphoreValue int 异步消息发送最大并发度 64 serverCallbackExecutorThreads int netty public任务线程池个数,netty网络设计没根据业务类型会创建不同线程池毛笔如处理发送消息,消息消费心跳检测等。如果业务类型(RequestCode)未注册线程池,则由public线程池执行 0 serverChannelMaxIdleTimeSeconds int 网络连接最大空闲时间。如果链接空闲时间超过此参数设置的值,连接将被关闭 120 serverOnewaySemaphoreValue int send oneway消息请求并发度 256 serverPooledByteBufAllocatorEnable boolean ByteBuffer是否开启缓存 true serverSelectorThreads int IO线程池线程个数,主要是NameServer.broker端解析请求,返回相应的线程个数,这类县城主要是处理网络请求的,解析请求包。然后转发到各个业务线程池完成具体的业务无操作,然后将结果在返回调用方 3 serverSocketRcvBufSize int netty网络socket接收缓存区大小16MB 131072 serverSocketSndBufSize int netty网络socket发送缓存区大小16MB 131072 serverWorkerThreads int netty业务线程池个数 8 shortPollingTimeMills long 短轮训等待时间 1000 slaveReadEnable boolean 从节点是否可读 false startAcceptSendRequestTimeStamp int   0 storePathCommitLog String Commitlog存储目录默认为${storePathRootDir}/commitlog /home/rocketmq/store/commitlog storePathRootDir String broker存储目录 默认为用户的主目录/store /home/rocketmq/store syncFlushTimeout long 同步刷盘超时时间 5000 traceOn boolean   true transactionCheckInterval long 事物回查周期 60000 transactionCheckMax int 事物回查次数 15 transactionTimeOut long 事物回查超时时间 6000 transferMsgByHeap boolean 消息传输是否使用堆内存 true transientStorePoolEnable boolean Commitlog是否开启 transientStorePool机制,默认为 false false transientStorePoolSize int transientStorePool中缓存 ByteBuffer个数,默认5个 5 useEpollNativeSelector boolean 是否启用Epoll IO模型。Linux环境建议开启 false useReentrantLockWhenPutMessage boolean 消息存储到commitlog文件时获取锁类型,如果为true使用ReentrantLock否则使用自旋锁 false useTLS boolean 是否使用安全传输层协议 false waitTimeMillsInHeartbeatQueue long 清理broker心跳线程等待时间 31000 waitTimeMillsInPullQueue long 清除消息拉取线程池任务队列的等待时间。如果系统时间减去任务放入队列中的时间小于waitTimeMillsInPullQueue,本次请求任务暂时不移除该任务 5000 waitTimeMillsInSendQueue long 清除发送线程池任务队列的等待时间。如果系统时间减去任务放入队列中的时间小于waitTimeMillsInSendQueue,本次请求任务暂时不移除该任务 200 waitTimeMillsInTransactionQueue long 清理提交和回滚消息线程队列等待时间 3000 warmMapedFileEnable boolean 是否温和地使用 MappedFile如果为true,将不强制将内存映射文件锁定在内存中 false connectWhichBroker String FilterServer连接的Broker地址   filterServerIP String FilterServerIP地址,默认为本地服务器IP   compressMsgBodyOverHowmuch int 如果消息Body超过该值则启用   zipCompresslevel int Zip压缩方式,默认为5,详细定义请参考java.util.Deflate中的定义   clientUploadFilterClassEnable boolean 是否支持客户端上传 FilterClass代码   filterClassRepertoryUrl String filterClass服务地址,如果 clientUploadFilterClassEnable为false,则需要提供一个地址从该服务器获取过滤类的代码   fsServerAsyncSemaphorevalue int FilterServer异步请求并发度,默认为2048   fsServerCallbackExecutorThreads int 处理回调任务的线程池数量,默认为64   fsServerWorkerThreads int 远程服务调用线程池数量,默认为64          

 



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3